import request from '@/utils/request'

/**
 * 用户管理API
 */
export default {
  /**
   * 用户登录
   * @param {Object} data 登录信息
   */
  login(data) {
    return request({
      url: '/user/login',
      method: 'post',
      data
    })
  },

  /**
   * 用户退出登录
   * @param {string} username 用户名
   */
  logout(username) {
    return request({
      url: '/user/logout',
      method: 'post',
      params: { username }
    })
  },

  /**
   * 用户注册
   * @param {Object} data 注册信息
   */
  register(data) {
    return request({
      url: '/user/register',
      method: 'post',
      data
    })
  },

  /**
   * 添加用户
   * @param {Object} data 用户信息
   */
  add(data) {
    return request({
      url: '/user/add',
      method: 'post',
      data
    })
  },

  /**
   * 查询用户
   * @param {Object} params 查询条件
   */
  query(params) {
    return request({
      url: '/user/query',
      method: 'get',
      params
    })
  },

  /**
   * 分页查询用户列表
   * @param {Object} params 查询参数
   */
  getList(params = {}) {
    return request({
      url: '/user/list',
      method: 'get',
      params
    })
  },

  /**
   * 更新用户信息
   * @param {Object} data 用户信息
   */
  update(data) {
    return request({
      url: '/user/update',
      method: 'post',
      data
    })
  },

  /**
   * 删除用户
   * @param {number} id 用户ID
   */
  delete(id) {
    return request({
      url: '/user/delete',
      method: 'post',
      params: { id }
    })
  },

  /**
   * 批量删除用户
   * @param {Array} ids 用户ID数组
   */
  deleteBatch(ids) {
    return request({
      url: '/user/deleteBatch',
      method: 'post',
      data: ids
    })
  },

  /**
   * 初始化测试用户
   */
  initTestUser() {
    return request({
      url: '/user/initTestUser',
      method: 'post'
    })
  }
}
